package com.hsy.service;

import com.hsy.pojo.User;

import java.util.List;

public interface UserService {

    /**
     * 检查用户账号、用户昵称是否 不存在
     * @param user
     * @return 不存在返回true、存在返回false
     */
    public boolean checkUserNotExist(User user);

    /**
     * 新增用户
     *
     * @param user
     * @return
     */
    public int insert(User user);

    /**
     * 检查用户是否可登入（检查是否存在用户、密码是否正确）
     * @param user
     * @return 可以则返回在数据库中的该User对象，不行返回null
     */
    public User checkLogin(User user);

    /**
     * 查询用户列表 返回
     * @return 用户列表
     */
    public List<User> selectUserList();

    User selectUserByUserId(Long userId);

    int update(User user);

    int delete(Long userId);

    List<User> selectUserListByNameAndStatus(String nickName, String status);

    /**
     * 分页查询用户列表
     * @param startIndex
     * @param targetTotal
     * @return
     */
    List<User> selectUserList(Integer startIndex, Integer targetTotal);

    /**
     * 返回用户总数
     * @return
     */
    Integer getTotalUserCount();
}
